package com.xxwy.ddu.security.code.authentication.qq.connection;

import com.xxwy.ddu.security.code.authentication.qq.QQ;
import com.xxwy.ddu.security.code.authentication.qq.bean.QQUserInfo;
import org.springframework.social.connect.ApiAdapter;
import org.springframework.social.connect.ConnectionValues;
import org.springframework.social.connect.UserProfile;

/**
 * @author xxwy
 * on 2018/8/23 0023
 */
public class QQAdapter implements ApiAdapter<QQ> {
    /**
     * 测试api可用
     *
     * @param qq
     * @return
     */
    @Override
    public boolean test(QQ qq) {
        //假设qq永远是可以连接的
        return true;
    }

    /**
     * 适配
     *
     * @param qq
     * @param connectionValues
     */
    @Override
    public void setConnectionValues(QQ qq, ConnectionValues connectionValues) {
        QQUserInfo userInfo = qq.getUserInfo();
        connectionValues.setDisplayName(userInfo.getNickname());
        connectionValues.setImageUrl(userInfo.getFigureurl_qq_1());
        //个人主页
        connectionValues.setProfileUrl(null);
        connectionValues.setProviderUserId(userInfo.getOpen_id());

    }

    /**
     * 绑定解绑的时候
     * @param qq
     * @return
     */
    @Override
    public UserProfile fetchUserProfile(QQ qq) {
        return null;
    }

    /**
     * 有主页的
     * @param qq
     * @param s
     */
    @Override
    public void updateStatus(QQ qq, String s) {
        //do nothing

    }
}
